iT邦幫忙

2022 iThome 鐵人賽

DAY 9
2
Modern Web

資料庫也有版本控制系列 第 9

Day 9 : 第三方獨立工具 Migration 方案

  • 分享至 

  • xImage
  •  

三、資料庫版本控制的工具

Day 8 : 各語言的 ORM 提供的 Migration 方案
-> Day 9 : 第三方獨立工具 Migration 方案


我們主要會介紹 Flyway 與 Liquibase 這兩款都是使用JAVA 撰寫的開源資料庫遷移工具,兩者有很多相似之處
各有優勢也都是主流的資料庫遷移工具

以下兩款皆可以將遷移語法輸出成 Java 與純 SQL 的語法
也可整合進入 JAVA 的網頁框架 Spring Boot 內使用,皆有有很好的彈性與很高的使用率

而以下會重點介紹他們突出的特色

  1. Flyway
    Flyway 的 Github Repo

Flyway 會將異動的紀錄寫入 flyway_schema_history 這張資料表內,透過這張表來產生需要的遷移檔

免費版本就具備 Rollback 功能,能將目前資料庫還原到上一版本,付費版可以恢復到指定版本與設定指令僅還原部分的變更

更改部署的環境時需要為了每一個環境撰寫設定檔,如 dev.env, prod.env

  1. liquibase

liquibase 的 Github Repo

Liquibase 會將異動的紀錄寫入 databasechangelog 這張資料表內,透過這張表來產生需要的遷移檔

免費版本不具備 Rollback 功能,僅付費版可用

能夠方便的使用標籤來更改部署的環境,如 dev, prod


後續預告

這是資料庫版本控制的工具的最後一天,明日將會進到 解決進行資料庫版控會遇到的問題 篇章


上一篇
Day 8 : 各語言的 ORM 提供的 Migration 方案
下一篇
Day 10 : 多個系統使用的同一個資料庫時要如何做版本變更
系列文
資料庫也有版本控制30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言